package com.pap.product.agent.product.dto;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;

@JsonInclude(Include.NON_EMPTY)
public class ProductDTO implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	/**
	 * 编号
	 */
	private String id;
	
	/**
	 * 编码,所属表字段为t_product_product.CODE
	 */
	private String code;

	/**
	 * 名称,所属表字段为t_product_product.NAME
	 */
	private String name;

	/**
	 * 客户类型,所属表字段为t_product_product.CUSTOMER_TYPE
	 */
	private String customerType;

	/**
	 * 还款频率,所属表字段为t_product_product.PAY_FREQ
	 */
	private String payFreq;

	/**
	 * 租赁类型,所属表字段为t_product_product.LEASE_TYPE
	 */
	private String leaseType;

	/**
	 * 还款方式,所属表字段为t_product_product.REPAY_TYPE
	 */
	private String repayType;

	/**
	 * 首付比例,所属表字段为t_product_product.FIRST_RATE_TYPE
	 */
	private String firstRateType;

	/**
	 * 新车旧车,所属表字段为t_product_product.CAR_USED_TYPE
	 */
	private String carUsedType;

	/**
	 * 融资期限,所属表字段为t_product_product.FIN_MONTH_TYPE
	 */
	private String finMonthType;
	
	private List<ProductDetailDTO> details = new ArrayList<ProductDetailDTO>();

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getCustomerType() {
		return customerType;
	}

	public void setCustomerType(String customerType) {
		this.customerType = customerType;
	}

	public String getPayFreq() {
		return payFreq;
	}

	public void setPayFreq(String payFreq) {
		this.payFreq = payFreq;
	}

	public String getLeaseType() {
		return leaseType;
	}

	public void setLeaseType(String leaseType) {
		this.leaseType = leaseType;
	}

	public String getRepayType() {
		return repayType;
	}

	public void setRepayType(String repayType) {
		this.repayType = repayType;
	}

	public String getFirstRateType() {
		return firstRateType;
	}

	public void setFirstRateType(String firstRateType) {
		this.firstRateType = firstRateType;
	}

	public String getCarUsedType() {
		return carUsedType;
	}

	public void setCarUsedType(String carUsedType) {
		this.carUsedType = carUsedType;
	}

	public String getFinMonthType() {
		return finMonthType;
	}

	public void setFinMonthType(String finMonthType) {
		this.finMonthType = finMonthType;
	}

	public List<ProductDetailDTO> getDetails() {
		return details;
	}

	public void setDetails(List<ProductDetailDTO> details) {
		this.details = details;
	}

	@Override
	public String toString() {
		return "ProductDTO [id=" + id + ", code=" + code + ", name=" + name + ", customerType=" + customerType
				+ ", payFreq=" + payFreq + ", leaseType=" + leaseType + ", repayType=" + repayType + ", firstRateType="
				+ firstRateType + ", carUsedType=" + carUsedType + ", finMonthType=" + finMonthType + ", details="
				+ details + ", toString()=" + super.toString() + "]";
	}

}
